﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Smile.Mvvm.Service
{
    /// <summary>Service interface which manage page navigation.</summary>
    public interface INavigationService
    {
        /// <summary>Navigates to the specified page.</summary>
        ///
        /// <typeparam name="TPage">Type of the page.</typeparam>
        void Navigate<TPage>();

        /// <summary>Go to the previous page.</summary>
        void GoBack();
        
        /// <summary>Reset the navigation history.</summary>
        void Reset();
    }
}
